The work assignment logic in contact centers usually makes only a single routing decision for a contact at a single point in time. It is conventional wisdom that making a single routing decision on a work item results in the most efficient use of resources. The work assignment decision is, therefore, based on a single state of the contact center. This limits the work assignment logic from making perfect contact-to-agent assignments if the perfect agent is not currently available at the time when the assignment decision is made.